package com.wechat.service;

import java.util.concurrent.CompletableFuture;

import com.swak.entity.Page;
import com.swak.entity.Parameters;
import com.wechat.dto.MessageDTO;
import com.wechat.msg.Msg;

public interface MessageServiceAsync {
	CompletableFuture<MessageDTO> get(Long id);

	CompletableFuture<MessageDTO> save(MessageDTO message);

	CompletableFuture<Integer> delete(MessageDTO message);

	CompletableFuture<Page<MessageDTO>> page(MessageDTO query, Parameters param);

	CompletableFuture<MessageDTO> prepare(MessageDTO message);

	CompletableFuture<MessageDTO> confirm(MessageDTO message);

	@SuppressWarnings("rawtypes")
	CompletableFuture<MessageDTO> receive(MessageDTO message, Msg content);
}
